---@meta

--- LuatOS IDE Helper for module: pin
--- ```yaml
--- Summary: 管脚命名映射
--- URL: https://gitee.com/openLuat/LuatOS/tree/master/luat/modules/luat_lib_pin.c
--- Demo: 
--- Video: 
--- Tag: LUAT_USE_PIN
--- ```
--- ```lua
--- 这个库是为了解决文本形式的PIN脚命名与GPIO编号的映射问题
--- 功能实现上, pin.PA01 就对应数值 1, 代表GPIO 1, 丝印上对应 PA01
--- PA12, GPIO12, 设置为输出, 而且低电平.
--- gpio.setup(12, 0)
--- gpio.setup(pin.PA12, 0) -- 推荐使用
--- gpio.setup(pin.get("PA12"), 0) -- 不推荐, 太长^_^
--- 只有部分BSP有这个库, ESP系列就没这个库
--- 这个库在 Air101/Air103/Air105 上有意义, 但不是必须用这个库, 直接写GPIO号是一样的效果
--- 在 ESP32系列, EC618系列(Air780E等), GPIO号都是直接给出的, 没有"Pxxx"形式, 所以这个库不存在
--- ```
pin = {}

--- 获取管脚对应的GPIO号, 可简写为  pin.PA01 , 推荐使用简写
---@param name name 管脚的名称, 例如PA01, PB12
---@return number #1 对应的GPIO号,如果不存在则返回-1,并打印警告信息
--- ```lua
--- 以下三个语句完全等价, 若提示pin这个库不存在,要么固件版本低,请升级底层固件, 要么就是不需要这个库
--- PA12, GPIO12, 设置为输出, 而且低电平.
--- gpio.setup(12, 0)
--- gpio.setup(pin.PA12, 0) -- 推荐使用
--- gpio.setup(pin.get("PA12"), 0) -- 不推荐, 太长^_^
--- ```
function pin.get(name) end
